#ifndef CONFIGINFO_H
#define CONFIGINFO_H

#include <vector>
#include <string>
#include <map>
#include <set>
#include <boost/assign/list_of.hpp>

using namespace std;
using namespace boost::assign;

#define LOCAL_SERVER "localhost"
#define LOCAL_USR "root"
#define LOCAL_PWD ""
#define LOCAL_DB "cg3002"

#define REMOTE_SERVER "cg3002-05-z.comp.nus.edu.sg"
#define REMOTE_USR "root"
#define REMOTE_PWD "group05"
#define REMOTE_DB "test"

#define SHOP_ID 1

#define MAX_COLUMN 50
#define SERVERS_NO 2

#define CASHIER_LENGTH 4
#define BARCODE_LENGTH 8
#define POS_START	   6
#define MAX_PID		   9999
#define PID_SIZE	1

#define TOO_MUCH	"too_much"
static const map<string, int> Servers = map_list_of(LOCAL_SERVER, 0)(REMOTE_SERVER, 1);

static const int LocalTablesNo = 4;
static const int ServerTablesNo = 4;
static const string Tables[SERVERS_NO][MAX_COLUMN] = {
					("cashier", "item", "local_admin", "local_transaction"),
					("cashier", "inventory", "admin", "local_transaction")
};
static const map<string, int> LocalTables = map_list_of("cashier", 0)("item", 1)("local_admin", 2)("local_transaction", 3);
static const map<string, int> ServerTables = map_list_of("cashier", 0)("inventory", 1)("admin", 2)("local_transaction", 3);
static const int LocalDatabasesNo = 1;
static const int ServerDatabasesNo = 1;
static const string Databases[SERVERS_NO][MAX_COLUMN] = {
					("LOCAL_DB"),
					("SERVER_DB")
};
#endif